Higher-order symbolic execution via contracts
نویسندگان
چکیده
منابع مشابه
Higher-order symbolic execution for contract verification and refutation
We present a new approach to automated reasoning about higher-order programs by endowing symbolic execution with a notion of higher-order, symbolic values. To validate our approach, we use it to develop and evaluate a system for verifying and refuting behavioral software contracts of components in a functional language, which we call soft contract verification. In doing so, we discover a mutual...
متن کاملNoninterference via Symbolic Execution
Noninterference is a high-level security property that guarantees the absence of illicit information flow at runtime. Noninterference can be enforced statically using information flow type systems; however, these are criticized for being overly conservative and rejecting secure programs. More precision can be achieved by using program logics, but such an approach lacks its own verification tool...
متن کاملHigher-order Behavioral Contracts for Distributed Components
Inspired by the Design by Contract paradigm, we intro-duce CONSUL, a contract system for distributed compo-nents. CONSUL monitors distributed components at run timewith higher-order behavioral contracts. Contract monitoringis local to a component, and the component is treated asa black box. Thus it does not disturb the highly decouplednature of distributed components and...
متن کاملTreatJS: Higher-Order Contracts for JavaScript
TreatJS is a language embedded, higher-order contract system for JavaScript which enforces contracts by run-time monitoring. Beyond providing the standard abstractions for building higher-order contracts (base, function, and object contracts), TreatJS’s novel contributions are its guarantee of non-interfering contract execution, its systematic approach to blame assignment, its support for contr...
متن کاملTreatJS: Higher-Order Contracts for JavaScript (Artifact)
TreatJS is a language embedded, higher-order contract system for JavaScript which enforces contracts by run-time monitoring. Beyond providing the standard abstractions for building higher-order contracts (base, function, and object contracts), TreatJS’s novel contributions are its guarantee of non-interfering contract execution, its systematic approach to blame assignment, its support for contr...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: ACM SIGPLAN Notices
سال: 2012
ISSN: 0362-1340,1558-1160
DOI: 10.1145/2398857.2384655